A third generation (3G) Universal Terrestrial Radio Access Network (UTRAN) comprises several radio network controllers (RNCs), each of which is associated with one or more Node Bs, and each Node B is associated with one or more cells.
The 3G FDD and TDD systems typically use the RNC to distribute, (i.e., buffer and schedule), data transmissions to the UE. However, for the high speed channels of 3G cellular systems, data is distributed by the Node B. One of these high speed channels, for example, is the High Speed Downlink Shared Channel (HS-DSCH). Since data is distributed by the Node B, it is necessary to buffer data for transmission in Node B. When the distributing entity (Node B) to which the UE is attached changes, there is a potential loss of data buffered in the distributing entity. The RNC does not have an up-to-date status of the transmissions of Packet Data Units (PDUs) since data is distributed by the intermediate point (Node B). It is necessary for the UE to detect the data loss and request retransmission, such as with a Status PDU, of lost PDUs from the RNC. If the generation of the Status PDU is delayed, as a consequence, the latency of data retransmission may be large and may not satisfy QoS requirements.
This problem is aggravated in the HS-DSCH case since there are several Node Bs associated with each RNC and there is a much higher likelihood that a mobile UE will require a Node B change than a change of RNC as a result of UE cell handovers.
The HS-DSCH utilizes AMC to enable high-speed transmission of data and utilizes H-ARQ to increase the possibility of successful delivery of data. A serving HS-DSCH cell change is when the UE has to change the cell associated with the UTRAN access point that is performing transmission and reception of the serving HS-DSCH radio link. The serving HS-DSCH cell change is invoked when improved physical channel conditions and/or improved physical capacity is realized in an alternate cell.
There are two types of serving HS-DSCH cell changes. An Intra-Node B serving HS-DSCH cell change is when the UE changes between two cells that are associated with the same Node B. An Inter-Node B serving HS-DSCH cell change is when the UE changes between two cells that are associated with different Node Bs. In an Inter-Node B cell change, the Node B before the serving HS-DSCH cell change is called the source Node B and the Node B after the serving HS-DSCH cell change is called the target Node B.
There are peer Radio Link Control (RLC) entities in both the RNC and the UE. The sending RLC entity signals a sequence number (SN) in the PDU header, which is used by the receiving RLC entity to ensure that no PDUs are missed in the transmission. If there are PDUs missed during the transmission, realized by out-of-sequence delivery of PDUs, the receiving RLC entity sends a status report PDU to inform the sending RLC entity that certain PDUs are missing. The status report PDU describes the status of the successful and/or unsuccessful data transmissions. It identifies the SNs of the PDUs that are missed or received. If a PDU is missed, the sending RLC entity will retransmit a duplicate of the missed PDU to the receiving RLC.
It is also possible for the sending RLC entity to poll for a status report PDU from the receiving RLC entity. The polling function provides a mechanism for the sending RLC entity to request the status of PDU transmissions. Although the H-ARQ operation removes some failed transmissions and increases the probability of successful delivery of data, it is the RLC protocol layer that ultimately ensures successful delivery.
Due to dynamic changes in propagation conditions, the HS-DSCH cell change must be performed rapidly to maintain quality of service. During the serving HS-DSCH cell change, it is possible that the UE stops transmission and reception in the source cell before all PDUs currently stored in the source Node B are successfully transmitted. Since the source Node B performs scheduling and buffering of the data, and since the data rates are very high, (for example 10 Mb/sec or higher), when the UE performs a serving HS-DSCH cell change (especially for an Inter-Node B handover) there is a possibility that considerable amounts of data buffered in the source Node B will be lost. One reason for this data loss is that no mechanism exists within the UTRAN architecture for data buffered at the source Node B to be transferred to the target Node B. Upon a serving HS-DSCH cell change, the RNC has no information on how much, if any, data is lost since the RNC has no way to know what data is buffered in the source Node B.
There are currently two ways that prior art systems handle the recovery of data buffered at the source Node B. Following the HS-DSCH cell change: 1) the RNC can explicitly poll for a status PDU from the UE; or 2) the RNC can start transmitting in the target cell and the out-of-sequence delivery realized by the UE will generate the status PDU.
In the first case, where the RNC explicitly polls for a status PDU, the RNC must first wait until the physical channel is established in the new cell. The status PDU request is then sent and is received and processed by the UE. The UE generates the status PDU and sends it back to the RNC, which processes the status PDU and determines which PDUs are in need of retransmission.
In the second case, where the RNC just starts transmitting PDUs from where it stopped in the source cell, the UE recognizes the out-of-sequence delivery of data and generates a status PDU back to the RNC. The RNC processes the status PDU and learns which PDUs are in need of retransmission.
In either of these two cases, if data buffered in the source Node B needs to be recovered, then a status PDU will be processed, but proper reception of data retransmitted by the UE will be considerably delayed. This is due to delayed generation of the status PDU by the UE and reception of the status PDU in the RNC. If transmission is being performed in the RLC acknowledged mode, data is not passed to higher layers until in-sequence delivery of data can be performed. Accordingly, the UE will be required to buffer the out-of-sequence data until the missing PDUs can be retransmitted. This not only results in a delay of the transmission, but requires the UE to have a memory capable of data buffering for continuous data reception until the missed data can be successfully retransmitted. Otherwise the effective data transmission rate is reduced, thereby effecting quality of service. Since memory is very expensive, this is an undesirable design constraint.
Another problem encountered with handover is the data that is buffered within the UE. Within the MAC layer, there are typically a number of H-ARQ processors that perform H-ARQ processing. As shown in FIG. 1, H-ARQ processing is a scheme comprising multiple parallel H-ARQ processors on the transmitting side (P1B-P5B) and corresponding multiple parallel H-ARQ processors on the receiving side (P1UE-P5UE). Each processor pair, (for example P1B and P1UE), repeatedly and sequentially attempt transmission of a data block until the transmission is successful, to ensure that each block of data is received without an error. For each data block, the time required to achieve successful H-ARQ transmission varies. Since several data blocks are processed in parallel, it is possible that the sequence of transmission is not maintained. Therefore, once a data block is received successfully by the receiving H-ARQ processor, the data block is forwarded to a reordering buffer to provide in-sequence delivery to the RLC layer. The reordering buffers will reorder the data blocks based on their transmission sequence numbers before forwarding them to the RLC layer.
During Inter-Node B or Intra-Node B handovers, the RRC messages often carry a MAC layer reset indicator to the UE. Upon receiving a MAC layer reset indicator, the UE performs a sequence of functions including, but not limited to, flushing out buffers for all configured H-ARQ processes, (i.e. flushing out the reordering buffers by disassembling all MAC-hs layer PDUs in the reordering buffers into MAC-d layer PDUs and delivering all MAC-d layer PDUs to the MAC-d layer and then to its associated RLC entities). Upon Inter-Node B handovers (and some Intra Node B handovers), it is necessary to reset the MAC-hs layer in the UE such that all H-ARQ processes and all the reordering buffers are reset for data reception from a new MAC-hs entity of the target Node B.
After a serving HS-DSCH cell change, the correct status of successful or unsuccessful received PDUs cannot be obtained until the procedure of the MAC layer reset is completed and the data blocks are processed by the RLC.
It would be desirable to have a system and method where data buffered in the UE can be accounted for in order to properly maintain user quality of service requirements.